package com.wdata.base.dao;


import com.wdata.base.util.Page;
import com.wdata.base.util.PageData;

import java.util.List;


public interface CrudDao<T> {

    /**
     * Description: 分页查询
     * <p>
     * Date: 2024年1月31日, 0031 15:23
     */
      List<T> findListPage(Page page);

    /**
     * Description: 查询列表数量
     * <p>
     * Date: 2024年1月31日, 0031 15:23
     */
    Integer findListSize(Page page);

    /**
     * Description: 查询列表
     * <p>
     * Date: 2024年1月31日, 0031 15:23
     */
    List<T> findList(PageData pd);

    /**
     * Description: 查询详情
     * <p>
     * Date: 2024年1月31日, 0031 15:23
     */
    T findInfo(PageData pd);


    int save(T t);

    /**
     * 更新
     */
    int update(T t);

    /**
     * 删除
     */
    void remove(PageData pd);

    /**
     * 根据ids删除集合
     */
    void del(String[] ids);

    /**
     * delOne
     */
    void delOne(String id);
}
